1. Field of the Invention
The present invention relates to a method, system, and program for encoding and decoding input data.
2. Description of the Related Art
It is often desirable to encrypt and compress data to both protect the data and optimize the use of storage of the data. Performing encryption and compression as well as decompression and decryption on very large data sets, such as an entire tape cartridge which can comprise 100 gigabytes (GB), can be computationally expensive and can take a considerable amount of time.
Moreover, the compression and encryption operations are usually performed sequentially in separate steps. The data is first compressed and then encrypted because encrypted data cannot typically be compressed. Performing compression and encryption sequentially requires scanning the data twice, which requires still further computational resources and time. Still further, compression may be performed by dedicated integrated circuits, whereas most popular encryption algorithms, such as the public/private key encryption and cipher schemes, are typically implemented using software, which is slower than using a dedicated integrated circuit.
Because providing both compression and encryption of data is an important product feature desired by consumers, there is a need in the art for improved techniques for performing both compression and encryption.